// 获取用户列表,并渲染到table中
let data = {
    pagenum: 1,
    pagesize: 2
}


function getChart() {
    $.ajax({
        type: "get",
        url: "/admin/users",
        data,
        success: function (res) {
            if (res.status === 0) {
                let str = ""
                res.data.forEach(item => {
                    str += ` <tr>
                    <td>${item.id}</td>
                    <td>${item.username}</td>
                    <td>${item.nickname}</td>
                    <td>${item.email}</td>
                    <td>
                        <div class="layui-form-item">
                            <div class="layui-input-inline">
                                <!-- 编辑按钮 -->
                                <button class="layui-btn layui-btn-sm " data-id=${item.id} id="edit" lay-submit 
                                 lay-filter="formDemo">编辑</button>
                                <!-- 删除按钮 -->
                                <button class=" del layui-btn layui-btn-sm layui-btn-danger" lay-submit data-id = ${item.id} 
                                    lay-filter="formDemo">删除</button>
                                <!-- 重置按钮 -->
                                <button type="reset" data-id = ${item.id} class="reset layui-btn layui-btn-sm layui-btn-normal">重置密码</button>
                            </div>
                        </div>
                    </td>
                </tr>`
                })
                let total = res.total
                $("tbody").html(str)
                showPage(total)
            }


        }
    })
}
getChart()

//分页
function showPage(total) {
    let laypage = layui.laypage
    //执行一个laypage实例
    laypage.render({
        elem: 'laypage', //注意，这里的 test1 是 ID，不用加 # 号
        count: total, //数据总数，从服务端得到
        // groups: 3,
        curr: data.pagenum,
        // 当前显示几条必须写的
        limit: data.pagesize,
        layout: ['prev', 'page', 'next', "skip", "count", "limit"],
        limits: [2, 3, 5, 10],
        jump: function (obj, first) {
            //obj包含了当前分页的所有参数，比如：
            // console.log(obj.curr); //得到当前页，以便向服务端请求对应页的数据。
            // console.log(obj.limit); //得到每页显示的条数
            //首次不执行
            if (!first) {
                //do something
                data.pagesize = obj.limit;
                data.pagenum = obj.curr
                getChart()

            }
        }
    })
}


//点击编辑跳转
$("tbody").on("click", "#edit", function (e) {
    e.preventDefault()
    let id = $(this).data("id")
    console.log(id);
    location.href = "./edit.html?id=" + id
})



//删除
let id
$("tbody").on("click", ".del", function (e) {
    e.preventDefault()
    id = $(this).data("id")
    layer.confirm('你确定要删除吗？', {
        btn: ['确定', '取消', ] //可以无限个按钮
            ,
    }, function (index, layero) {
        //按钮【按钮一】的回调

        console.log(id);
        $.ajax({
            type: "DELETE",
            url: "/admin/users/" + id,
            success: function (res) {
                if (res.status === 0) {
                    layer.msg(res.message)
                    getChart()
                } else {
                    layer.msg(res.message)
                }
            }

        })
    }, function (index) {
        //按钮【按钮二】的回调
        layer.close($("#tanceng"))
    });

})

//重置密码
$("tbody").on("click", ".reset", function () {

    layer.open({
        title: '重置密码',
        content: $('#tanceng').html(),
        area: ['500px', '300px']
    });
    id = $(this).data("id")
    getMessage(id)
    $(".layui-layer-btn0").css("display", "none")
})





//点击弹层中提交,获取信息
function getMessage(id) {
    $("body").on("click", ".subtn", function (e) {
        e.preventDefault()
        let password = $("#password").val()
        let surePwd = $("#surePwd").val()
        // console.log(password, surePwd);
        if (password === surePwd) {
            $.ajax({
                type: "PUT",
                url: "/admin/users/" + id,
                data: {
                    password
                },
                success: function (res) {
                    if (res.status === 0) {

                        layer.msg(res.message)
                    } else {
                        layer.msg(res.message)
                    }
                }
            })
        } else {
            layer.msg("密码需要一致哦!")
        }


    })
}